通俗易懂地了解faster RCNN(RPN区域建议网络) |
您所在的位置:网站首页 › faster rcnn roi pooling 代码 › 通俗易懂地了解faster RCNN(RPN区域建议网络) |
faster RCNN[2015 Ren]
回顾 R-CNN ==> 1image/mni Fast R-CNN ==> 1~2 fps 1. faster RCNN作用:提取特征(一次) 不用给每个ROI都提取特征通过RPN将提取的特征来生成区域建议结构:ZF / Resnet / VGG16(13 conv + 13 Relu + 4 Pooling) 把网络结构当积木来用的思维比如想要算快一些,网络换成mobile net, shuffle net都是可以的输出 Batchsize x Channel x H/16 x W / 16 (VGG16举例) faster rcnn将尺寸为1000 x 800大小的feature map归一化到600 x 800的尺寸,则其输出的特征图大小为 1 x 256 x 38 x 50backbone获取特征图信息,然后用RPN网络筛选候选框和ROIPooling输出相同尺寸的特征图,整个faster rcnn如下图 Test 网络结构 RPN目标 生成region proposal区域建议因为流程为先RPN找出区域建议的物体,然后在做更加精细的类别划分和Bbox回归,这种方式被称为Two-Stage因此有人认为两阶段检测比一阶段检测更准Anchor Train 网络结构 Train网络结构中RPN的Test两条支线如下 faster RCNN 网络结构手绘制版 Smooth L1 loss RPN在做回归时,上图Train网络结构中绿线框选的部分,需要先做掩膜版(Mask)![]() ![]() ![]() RPN训练细节 取IOU > 0.7 的anchor作为前景FG取IOU < 0.3 的anchor作为背景BGIOU在0.3和0.7的anchor去除batchsize为128,fg和bg的比例为1:3 4. 训练Faster RCNN = RPN + Fast R-CNN 问题 rpn需要训练,fast rcnn也需要训练;共用的话,训练rpn时backbone变了,用rpn的数据训练fast rcnn时,backbone又变了,会导致rpn不准确 weight share(权重共享) RPN包含backbone,Fast rcnn也包含backbone,Fast rcnn需要用到RPN的输出 训练四阶段 分布联合训练 仅训练rpn,backbone更新,rpn-unique(专有部分网络)也更新把1中rpn的结果用于fast rcnn训练,backbone共享,backbone更新,fast rcnn(专有部分网络)也更新使用2中更新过的backbone重新训练rpn,固定rpn,更新rpn unique使用3中的rpn训练fast rcnn,backbone固定,更新fast rcnn uniquerpn的region proposal区域建议用于fast rcnn训练,backbone更新,fast rcnn的专有网络也更新 附: faster rcnn代码实现 faster rcnn框架/库mmdetection faster rcnn框架/库detectron2 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |